package cn.xenosp.server.common.tools;


/**
 * 项目名： service-web
 * 包路径： cn.xenosp.server.common.tools
 * 作者：   TongHui
 * 创建时间: 2024-08-25 18:59
 * 描述: TODO
 * 版本: 1.0
 */
public class PercentageUtils {

    /**
     * 计算使用率百分比
     *
     * @param total 总数
     * @param used 已使用数
     * @return 使用率百分比
     * @throws IllegalArgumentException 如果总数为0或已使用数大于总数
     */
    public static String calculateUsagePercentage(double total, double used) {
        if (total <= 0) {
            throw new IllegalArgumentException("总数必须大于0");
        }
        if (used > total) {
            throw new IllegalArgumentException("已使用数不能大于总数");
        }

        return  String.format("%.2f", (used / total) * 100);
    }

    /**
     * 计算未使用率百分比
     *
     * @param total 总数
     * @param used 已使用数
     * @return 未使用率百分比
     * @throws IllegalArgumentException 如果总数为0或已使用数大于总数
     */
    public static String calculateUnusedPercentage(double total, double used) {
        if (total <= 0) {
            throw new IllegalArgumentException("总数必须大于0");
        }
        if (used > total) {
            throw new IllegalArgumentException("已使用数不能大于总数");
        }
        return String.format("%.2f", ((total - used) / total) * 100);
    }

}

